﻿using System;

namespace Eassets.Layered.Domain.Asset
{
    [Serializable]
   public class AssetDisposalDetails
    {
        #region Fields

        /// <summary>
        /// The Asset Disposal Details Id of the FixedAssetDisposalDetails.
        /// </summary>
        private long assetDisposalDetailsId;
        /// <summary>
        /// The Transaction Id of the FixedAssetDisposalDetails.
        /// </summary>
        private long transactionId;
        /// <summary>
        /// The Asset Id of the FixedAssetDisposalDetails.
        /// </summary>
        private long assetId;
        /// <summary>
        /// The Asset Item Serial Code of the FixedAssetDisposalDetails.
        /// </summary>
        private string assetItemSerialCode = string.Empty;
        /// <summary>
        /// The Disposal Date of the FixedAssetDisposalDetails.
        /// </summary>
        private DateTime disposalDate;
        /// <summary>
        /// The Remaining Life Time of the FixedAssetDisposalDetails.
        /// </summary>
        private int remainingLifeTime;
        /// <summary>
        /// The Suggested Value of the FixedAssetDisposalDetails.
        /// </summary>
        private decimal suggestedValue;
        /// <summary>
        /// The Reason of the FixedAssetDisposalDetails.
        /// </summary>
        private string reason = string.Empty;

        #endregion

        #region Properties


        /// <summary>
        /// Gets or sets the Asset Disposal Details Id of the FixedAssetDisposalDetails.
        /// </summary>
        /// <value>
        /// The Asset Disposal Details Id of the FixedAssetDisposalDetails.
        /// </value>
        public long AssetDisposalDetailsId
        {
            get
            {
                return this.assetDisposalDetailsId;
            }
            set
            {
                this.assetDisposalDetailsId = value;
            }
        }

        /// <summary>
        /// Gets or sets the Transaction Id of the FixedAssetDisposalDetails.
        /// </summary>
        /// <value>
        /// The Transaction Id of the FixedAssetDisposalDetails.
        /// </value>
        public long TransactionId
        {
            get
            {
                return this.transactionId;
            }
            set
            {
                this.transactionId = value;
            }
        }

        /// <summary>
        /// Gets or sets the Asset Id of the FixedAssetDisposalDetails.
        /// </summary>
        /// <value>
        /// The Asset Id of the FixedAssetDisposalDetails.
        /// </value>
        public long AssetId
        {
            get
            {
                return this.assetId;
            }
            set
            {
                this.assetId = value;
            }
        }

        /// <summary>
        /// Gets or sets the Asset Item Serial Code of the FixedAssetDisposalDetails.
        /// </summary>
        /// <value>
        /// The Asset Item Serial Code of the FixedAssetDisposalDetails.
        /// </value>
        public string AssetItemSerialCode
        {
            get
            {
                return this.assetItemSerialCode;
            }
            set
            {
                this.assetItemSerialCode = value;
            }
        }

        /// <summary>
        /// Gets or sets the Disposal Date of the FixedAssetDisposalDetails.
        /// </summary>
        /// <value>
        /// The Disposal Date of the FixedAssetDisposalDetails.
        /// </value>
        public DateTime DisposalDate
        {
            get
            {
                return this.disposalDate;
            }
            set
            {
                this.disposalDate = value;
            }
        }

        /// <summary>
        /// Gets or sets the Remaining Life Time of the FixedAssetDisposalDetails.
        /// </summary>
        /// <value>
        /// The Remaining Life Time of the FixedAssetDisposalDetails.
        /// </value>
        public int RemainingLifeTime
        {
            get
            {
                return this.remainingLifeTime;
            }
            set
            {
                this.remainingLifeTime = value;
            }
        }

        /// <summary>
        /// Gets or sets the Suggested Value of the FixedAssetDisposalDetails.
        /// </summary>
        /// <value>
        /// The Suggested Value of the FixedAssetDisposalDetails.
        /// </value>
        public decimal SuggestedValue
        {
            get
            {
                return this.suggestedValue;
            }
            set
            {
                this.suggestedValue = value;
            }
        }

        /// <summary>
        /// Gets or sets the Reason of the FixedAssetDisposalDetails.
        /// </summary>
        /// <value>
        /// The Reason of the FixedAssetDisposalDetails.
        /// </value>
        public string Reason
        {
            get
            {
                return this.reason;
            }
            set
            {
                this.reason = value;
            }
        }

        #endregion
    }
}
